<?php
    $dbhost = "localhost";
    $dbuser = "ic2011020375";
    $dbpassword = "ic2011020375";
    $dbname = "ic2011020375";
	$conexion;

	function abreConexion()
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
		$conexion=mysql_connect($dbhost,$dbuser,$dbpassword);
		mysql_select_db($dbname,$conexion);
		
	}
	function cierraConexion()
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
		mysql_close($conexion);
	}
	function eliminarTabla($nombreTabla)
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
		abreConexion();
		$consulta = "DROP TABLE IF EXISTS ".$nombreTabla;
		mysql_query( $consulta , $conexion )or die( mysql_error() );
		cierraConexion();
	}
	function getTablas()
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;	
		abreConexion();	
		$consulta="SHOW TABLES;";
		$mTablas=mysql_query($consulta,$conexion)or die(mysql_error());
		cierraConexion();
		return $mTablas;
	}
	function getColumnas($tabla)
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
		abreConexion();	
		$Sql2 ="DESCRIBE ".$tabla;
                $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
       
		return $result2;
	}
        function getArrayNomCol($tabla)
	{
		global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
		abreConexion();	
		$Sql2 ="DESCRIBE ".$tabla;
        $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
               $i=0;
		while($Rs2 = mysql_fetch_array($result2)) {
          $arrayc[$i]=$Rs2['Field']; $i++;
		}
		return $arrayc;
	}
        function getNombreTipo2($type)
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
 	    $nombre="";
		$i=0;					
	    while($type[$i]!= '('){
	    $nombre=$nombre.$type[$i];
	    $i++;
             }
		return $nombre;
	}
        function getLongitud($type)
        {
            $longitud="";
            $i=0;
            $ban=0;
            while($type[$i]!= ')'){
             if($ban==1)
               $longitud=$longitud.$type[$i];
             if($type[$i]=='(')
              $ban=1;
      	     
	     $i++;
            }
		return $longitud;
        }
 function getNombreTablas()
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();		
	  $consulta="SHOW TABLES";
	  $res=mysql_query($consulta,$conexion)or die(mysql_error());
	  
        $array[50];
        $j=0;
          while($Rs = mysql_fetch_array($res)) {
           $Sql2 ="DESCRIBE ".$Rs[0];
           $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
           $array[$j]=$Rs[0];
           $j++;


          }	
	  return $array;
	}
        function getAtributo_y_Tipo($nombreTabla)
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();
	  $Sql2 ="DESCRIBE ".$nombreTabla;
      $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
      $j=0;  $array[50];
      while($Rs2 = mysql_fetch_array($result2)) 
	  {
         $array[$j]=$Rs2['Field'];
         $j++;
         $array[$j]=$Rs2['Type'];
         $j++;	
	  }
		return $array;
	}
     function renombrarTabla($nombreActual , $nombreNuevo)
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();
	  $Sql2 ="DESCRIBE ".$nombreActual;
          $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
	  
         $sql= 'RENAME TABLE '. $nombreActual.' TO '.$nombreNuevo;
	  //$sql= "alter table". $nombreActual."rename".$nombreNuevo;
          $succes=mysql_query($sql,$conexion)or die(mysql_error());
        
	}
       	function getTupla($nombreTabla,$primaryKey)
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();
	  $Sql2 ="select * from ".$nombreTabla;
	  $result2 = mysql_query( $Sql2,$conexion ) or die("No se puede ejecutar la consulta: ".mysql_error());
          
          $filas=mysql_num_rows($result2);
          $columnas=mysql_num_fields($result2);	
          $colt=getArrayNomCol($nombreTabla);
          // print_r($colt); 
		 //  print_r($columnas);         
          for($i=0; $i<$filas; $i++)
	  {
		
          $tupla=mysql_fetch_assoc($result2);
          $tuplac=$tupla;
           //print_r($tuplac['Nombre']);
          for($j=0;$j<$columnas;$j++)
          {
           if($tuplac[$colt[$j]]==$primaryKey)
             return $tuplac;
          }
            
 
          }
          
	  
	  return "shit";
	}
        
    function getNomCol($nombreTabla,$primaryKey)
	{
	  global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();
	  $Sql2 ="select * from ".$nombreTabla;
	  $result2 = mysql_query( $Sql2,$conexion ) or die("No se puede ejecutar la consulta: ".mysql_error());
          
          $filas=mysql_num_rows($result2);
          $columnas=mysql_num_fields($result2);	
          $colt=getArrayNomCol($nombreTabla);
          // print_r($colt); 
		 //  print_r($columnas);         
          return $colt;
	}
	 
	 function getKey($nameTable)
	 {
      global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();	 
	  $Sql2 ="DESCRIBE ".$nameTable;
      $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta en getkey: ".mysql_error());
	  
	  while($Rs2 = mysql_fetch_array($result2))
	    if($Rs2['Key']==PRI)
		  return $Rs2['Field'];
	 }
	

    function actualizarTupla($nameTable, $primarykey,$newTupla)
	{
            global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();
	   $Sql2 ="DESCRIBE ".$nameTable;
          $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta en actualizar tupla: ".mysql_error());
	  $oldTupla=getTupla($nameTable, $primarykey);
	  $colu=getNomCol($nameTable, $primarykey);
          //print_r($colu);
          $con=count($oldTupla);
          //print_r($oldTupla);
         // print_r($newTupla);
          $key=getkey($nameTable);
	  for($i=0; $i<$con; $i++)
	  {
	    if($colu[$i]!=$key)
	    { 
	     
	    $sql='UPDATE '.$nameTable.' SET '.$colu[$i].'="'.$newTupla[$i].'" WHERE '.$key.'="'.$primarykey.'"';
	    $res = mysql_query( $sql ) or die("No se puede ejecutar la consulta actualizar tupla >_<: ".mysql_error());
	   }
          }
          for($i=0; $i<$con; $i++)
	  {
             if($key==$colu[$i])
             {
               if($oldTupla[$key]!=$primarykey)
               {
                 $sql='UPDATE '.$nameTable.' SET '.$key.'="'.$primarykey.'" WHERE '.$key.'="'.$primarykey.'"';
	         $res = mysql_query( $sql ) or die("No se puede ejecutar la consulta actualizar tupla >_<: ".mysql_error());
               }  
             }
          }   

	}
	
    function getNumCol($tabla)
	{
          global $conexion, $dbhost, $dbuser, $dbpassword, $dbname;
	  abreConexion();	
	  $Sql2 ="DESCRIBE ".$tabla;
          $result2 = mysql_query( $Sql2 ) or die("No se puede ejecutar la consulta: ".mysql_error());
          $i=0;
	  while($Rs2 = mysql_fetch_array($result2))
	  {
             $arrayc[$i]=$Rs2['Field']; $i++;
          }
		return $i-1;
	}	
      
   
?>






























